<?php
class tpl_Upload_Form {
	/**
	 * $id : アップロードフォームのID
	 * $FormName : フォームのタイトルに表示する文言
	 * 
	 * もっといろいろ引数いるわ……。
	 */
	function call($toObj, $id = null, $FormName = 'アップロードフォーム') {
		// ２回同じものを読み込まないためにフラグ立て。
		if (empty($this->addHeader4Upload)) {

			$Header = Y('Document.Header$');
			$Tag = $Header->DOG_appendChild ('script');
			$Tag->attr (array(
				'type'		=>'text/javascript',
				'src'		=>'./vars/mod/upload/src/FancyUpload-jQuery.js',
			))->Text('');

			$Tag = $Header->DOG_appendChild ('script');
			$Tag->attr (array(
				'type'		=>'text/javascript',
				'src'		=>'./vars/mod/upload/src/upload.js',
			))->Text('');

			$this->addHeader4Upload = true;
		}

		$toObj->DOG_appendChild('div')->attr(array(
			'class'=>'UploadFormBack',
		))->text('');

		$Field = $toObj->DOG_appendChild('fieldset')->attr(array(
			'id'=>$id,
			'class'=>'UploadForm'
		));

		$Field->DOG_appendChild('legend')->text($FormName);

		$Upload = $Field->DOG_appendChild('fieldset')->attr(array('class'=>'upload'));
		$Upload->DOG_appendChild('legend')->text('新規アップロード');

		$Upload->DOG_appendChild('input')->attr(array(
			'type'=>'hidden',
			'id'=>'url',
			'class'=>'upload-values',
			'value'=>Y('Module.List.Editor.YML', 'baseurl').'/'. Y('Module.List.Editor.Form.name').'/'.Y('Module.List.Editor.Target'),
		));

		$Upload->DOG_appendChild('input')->attr(array(
			'type'=>'hidden',
			'id'=>'multiple',
			'class'=>'upload-values',
			'value'=>Y('Module.List.Editor.Form.multiple'), // default: trueにしたい。
		));

		$Upload->DOG_appendChild('input')->attr(array(
			'type'=>'hidden',
			'id'=>'typeFileter',
			'class'=>'upload-values',
			'value'=>Y('Module.List.Editor.Form.typeFilter')
		));

		$Upload->DOG_appendChild('input')->attr(array(
			'type'=>'hidden',
			'id'=>'typeFilterDescription',
			'class'=>'upload-values',
			'value'=>Y('Module.List.Editor.Form.typeFilterDescription')
		));

		$Upload->DOG_appendChild('input')->attr(array(
			'type'=>'hidden',
			'id'=>'session',
			'class'=>'upload-values',
			'value'=>Y('Helper.list.Session.ID')
		));

		$Div = $Upload->DOG_appendChild('div')->attr(array('class'=>'upload-status'));
		$Div->DOG_appendChild('a')->attr(array(
			'href'=>'#',
			'class'=>'upload-browse'
			))->text('ファイル選択');
		$Div->append(' | ');

		$Div->DOG_appendChild('a')->attr(array(
			'href'=>'#',
			'class'=>'upload-clear'
			))->text('アップ待ちファイルを全削除');
		$Div->append(' | ');

		$Div->DOG_appendChild('a')->attr(array(
			'href'=>'#',
			'class'=>'upload-clear'
			))->text('アップロードを開始');
		$Div->append(' | ');
		
		$Upload->DOG_appendChild('ul')->attr(array('class'=>'upload-list'))->text('');

		// コピーライト
		$toObj->DOG_appendChild('div')->text(
'(c) 2008-2009 by <a href="http://digitarald.de/">Harald Kirschner</a> and available under <a href="http://www.opensource.org/licenses/mit-license.php">The MIT License</a>'
		);

		$toObj->DOG_appendChild('a')->attr(array(
			'href'=>'#',
			'class'=>'UploadFormClose'
		))->text('閉じる');
	}
}

/*
<a href="#" class="UploadFormSwitch">ファイルアップロードはここをクリックしてください。</a>
<div id="<?php printY('Module.List.Editor.Form.name'); ?>" class="UploadForm">
<h4><?php printY('Module.List.Editor.Form.String'); ?></h4>
<p>同じ名前のファイルをアップロードした場合、上書きされます。</p>

<fieldset class="filelist">
<legend>アップロード済みのファイル</legend>
<ul class="upload-list">
<?php
$FileList = Y('Module.List.Upload.listFile', Y('Module.List.Editor.Form.name'), Y('Module.List.Editor.Form.target'), Y('Module.List.Editor.Target'));
if ($FileList) {
	foreach ($FileList as $Key=>$File) {
		print ('<li id="'.$File['ID'].'" class="file file-success">'."\n");
		print ('<span class="file-size">'.$File['FileSize'].'B</span>'."\n");
		print ('<a title="アップロードファイルを削除します。" href="#" class="sfile-remove">Remove</a>'."\n");
		print ('<span class="file-name"><a href="#">'.$File['Name'].'</a></span>'."\n");
		print ('<span class="file-info"></span>'."\n");
		print ('</li>'."\n");
	}
} else {
	print ('<li>アップロードされたファイルはありません。</li>'."\n");
}
?>
</ul>
</fieldset>

<fieldset class="upload-fallback">
<legend>新規アップロード</legend>
<label for="demo-photoupload">
ファイル選択:
	<input type="file" name="<?php printY('Module.List.Editor.Form.name'); ?>" />
</label>
<!-- ※ファイルを選ぶと自動的にアップロードが開始されます。 -->
</fieldset>

*/
?>